☑️ Features and tasks
We think of product development as a hierarchy of abstractions:
Use cases
These are main customer journeys that may involve multiple features. You can also think of it as a memorable session where customer actively uses a product. For example, adding a beehive, modelling it, uploading first inspection photos to receive aggregate statistics. Use case results in an 🧑🚀 Actions beekeepers make.
Adding new idea 💡
You can add new idea of a feature by creating a new file via github and describing it in markdown format. This pull request will be reviewed, same as code.
Features and Ideas
Feature is a large function that customer find valuable in a product. We describe features on this website under every product. Features offer a solution to one of the 🌨️ Problems. Features is something we can promote on front page or record a video about. A feature requires product thinking and multiple expertises - UX, Frontend, Backend, DB, ML.
Feature lifecycle
We separate ideas and features by product and by billing tier to have better separation of which repository and device it its tied to the most. Separation by tier is tied to the complexity of the task and how much does it cost to maintain infrastructure.
Tasks
Feature is implemented as tasks by individual contributors and ❤️🔥 Volunteers We manage tasks in github project 🐙 https://github.com/orgs/Gratheon/projects/5 That way we link description with actual code without leaving the environment. Usually, you create a task for a specific repository, like web-app so you can link it to an issue.
Issues
Tasks and Issues are very similar and can be linked to each other. Issues are usually regressions reported by users and are tied to specific repository. You can reference an issue when you create a pull request.